package com.ysx.oa.role.service;

import com.ysx.oa.role.bean.UserRoleBean;
import com.ysx.oa.role.dto.UserRoleDTO;

import java.util.List;

/**
 * @Author: 王伟雄
 * @Date: 2021/11/20 16:08
 */
public interface UserRoleService {
    /**
     * 方法描述:用户绑定角色
     * @author: 王伟雄
     * @date: 2021/11/20 16:09
     * @params: [userRoleBean]
     * @returns:java.lang.Integer
     */
    Integer add(UserRoleBean userRoleBean);

    /**
     * 方法描述:更改用户绑定角色的持续时间
     * @author: 王伟雄
     * @date: 2021/11/20 18:12
     * @params: [userRoleBean]
     * @returns:java.lang.Integer
     */
    Integer update(UserRoleBean userRoleBean);

    /**
     * 方法描述:通过字段查找，实现搜索功能
     * @author: 王伟雄
     * @date: 2021/11/20 19:21
     * @params: [userRoleBean]
     * @returns:java.util.List<com.ysx.oa.role.bean.UserRoleBean>
     */
    List<UserRoleBean> findSelected(UserRoleBean userRoleBean);

    /**
     * 方法描述:查询表的用户未绑定角色的列表
     * @author: 王伟雄
     * @date: 2021/11/20 19:23
     * @params: []
     * @returns:java.util.List<com.ysx.oa.role.bean.UserRoleBean>
     */
    List<UserRoleBean> findAll();

    /**
     * 方法描述:查询表的用户绑定角色的列表
     * @author: 王伟雄
     * @date: 2021/11/24 11:51 [] java.util.List<com.ysx.oa.role.bean.UserRoleBean>
     */
    List<UserRoleBean> findAllAllocated();

    /**
     * 方法描述:删除用户绑定的角色
     * @author: 王伟雄
     * @date: 2021/11/25 9:28 [userRoleBean] java.lang.Integer
     */
    Integer delete(UserRoleDTO userRoleDto);
}
